package com.atguigu.lease.web.admin.service;

import com.atguigu.lease.model.entity.ApartmentInfo;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentDetailVo;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentItemVo;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentQueryVo;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentSubmitVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

/**
* @author liubo
* @description 针对表【apartment_info(公寓信息表)】的数据库操作Service
* @createDate 2023-07-24 15:48:00
*/
public interface ApartmentInfoService extends IService<ApartmentInfo> {

    /**
     * @author gengjian
     * @date 2024/12/10 09:38:01
     * 根据动态条件（省份，城市，区县）分页查询公寓列表vo（房间总数，空房间数）
     * ipage公用同一个对象 所以这里可以返回void
     */
    void pageItem(IPage<ApartmentItemVo> iPage, ApartmentQueryVo queryVo);

    /**
     * @author gengjian
     * @date 2024/12/10 13:57:46
     * 保存或更新公寓信息及配套标签杂费图片ids
     */
    void saveOrUpdateApartmentSubmitVo(ApartmentSubmitVo apartmentSubmitVo);

    /**
     * @author gengjian
     * @date 2024/12/11 11:48:59
     * 根据公寓id查询公寓详情信息（用于修改的回显）
     */
    ApartmentDetailVo getDetaildById(Long id);

    /**
     * @author gengjian
     * @date 2024/12/11 11:05:30
     * 根据id删除公寓信息
     */
    void customRemove(Long id);
}
